package com.ruoyi.huanghefd.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.huanghefd.domain.twotickets;
import com.ruoyi.huanghefd.domain.twoticketsTJ;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @Author gnplum
 * @Date 2024/1/4 21:47
 * @PackageName:com.ruoyi.huanghefd.mapper
 * @ClassName: twoticketsMapper
 * @Description: 两票查询
 * @Version 1.0
 */
@Mapper
public interface twoticketsMapper extends BaseMapper<twotickets> {
    /**
     * @param ticketCode
     * @param ticketName
     * @param ticketType
     * @param ticketState
     * @param planStarttime
     * @param planEndtime
     * @return java.util.List<com.ruoyi.huanghefd.domain.twotickets>
     * @Author gnplum
     * @Description //工作票查询
     * @Date 22:05 2024/1/4
     **/
    List<twotickets> worksheetQueryByPage(@Param("ticketCode") String ticketCode, @Param("ticketName") String ticketName, @Param("ticketType") String ticketType, @Param("ticketState") String ticketState, @Param("planStarttime") String planStarttime, @Param("planEndtime") String planEndtime, @Param("isTimeout") String isTimeout, @Param("dept") String dept, @Param("principal") String principal, @Param("startIndex") int startIndex, @Param("pageSize") int pageSize);

    /**
     * @param ticketCode
     * @param ticketName
     * @param ticketType
     * @param ticketState
     * @param planStarttime
     * @param planEndtime
     * @return int
     * @Author gnplum
     * @Description //工作票查询 数量
     * @Date 22:06 2024/1/4
     **/
    int getWorksheetNum(@Param("ticketCode") String ticketCode, @Param("ticketName") String ticketName, @Param("ticketType") String ticketType, @Param("ticketState") String ticketState, @Param("planStarttime") String planStarttime, @Param("planEndtime") String planEndtime, @Param("isTimeout") String isTimeout, @Param("dept") String dept, @Param("principal") String principal);

    /**
     * @param ticketCode
     * @param ticketName
     * @param ticketType
     * @param ticketState
     * @param planStarttime
     * @param planEndtime
     * @return java.util.List<com.ruoyi.huanghefd.domain.twotickets>
     * @Author gnplum
     * @Description //操作票查询
     * @Date 22:05 2024/1/4
     **/
    List<twotickets> makesheetQueryByPage(@Param("ticketCode") String ticketCode, @Param("ticketName") String ticketName, @Param("ticketType") String ticketType, @Param("ticketState") String ticketState, @Param("planStarttime") String planStarttime, @Param("planEndtime") String planEndtime, @Param("dept") String dept, @Param("principal") String principal, @Param("startIndex") int startIndex, @Param("pageSize") int pageSize);

    /**
     * @param ticketCode
     * @param ticketName
     * @param ticketType
     * @param ticketState
     * @param planStarttime
     * @param planEndtime
     * @return int
     * @Author gnplum
     * @Description //操作票查询 数量
     * @Date 22:06 2024/1/4
     **/
    int getMakesheetNum(@Param("ticketCode") String ticketCode, @Param("ticketName") String ticketName, @Param("ticketType") String ticketType, @Param("ticketState") String ticketState, @Param("planStarttime") String planStarttime, @Param("planEndtime") String planEndtime, @Param("dept") String dept, @Param("principal") String principal);

    /**
     * @param dept
     * @param ticketType
     * @param currYearNum
     * @param currMonthNum
     * @return int
     * @Author gnplum
     * @Description //工作票统计 数量
     * @Date 18:05 2024/12/18
     **/
    int getTJWorksheetNum(@Param("dept") String dept, @Param("ticketType") String ticketType, @Param("currYearNum") String currYearNum, @Param("currMonthNum") String currMonthNum);

    /**
     * @param dept
     * @param ticketType
     * @param currYearNum
     * @param currMonthNum
     * @param startIndex
     * @param pageSize
     * @return java.util.List<com.ruoyi.huanghefd.domain.twoticketsTJ>
     * @Author gnplum
     * @Description //工作票统计
     * @Date 18:05 2024/12/18
     **/
    List<twoticketsTJ> TJworksheetQueryByPage(@Param("dept") String dept, @Param("ticketType") String ticketType, @Param("currYearNum") String currYearNum, @Param("currMonthNum") String currMonthNum, @Param("startIndex") int startIndex, @Param("pageSize") int pageSize);

    /**
     * @param dept
     * @param ticketType
     * @param currYearNum
     * @param currMonthNum
     * @return int
     * @Author gnplum
     * @Description //操作票统计 数量
     * @Date 18:05 2024/12/18
     **/
    int getTJMakesheetNum(@Param("dept") String dept, @Param("ticketType") String ticketType, @Param("currYearNum") String currYearNum, @Param("currMonthNum") String currMonthNum);

    /**
     * @param dept
     * @param ticketType
     * @param currYearNum
     * @param currMonthNum
     * @param startIndex
     * @param pageSize
     * @return java.util.List<com.ruoyi.huanghefd.domain.twoticketsTJ>
     * @Author gnplum
     * @Description //操作票统计
     * @Date 18:06 2024/12/18
     **/
    List<twoticketsTJ> TJmakesheetQueryByPage(@Param("dept") String dept, @Param("ticketType") String ticketType, @Param("currYearNum") String currYearNum, @Param("currMonthNum") String currMonthNum, @Param("startIndex") int startIndex, @Param("pageSize") int pageSize);
}